package com.hr.异步调用;

import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicIntegerArray;

/**
 * @program: leetcode
 * @description: 可见性synchronized在修改了本地内存中的变量后，解锁前会将本地内存修改的内容刷新到主内存中，确保了共享变量的值是最新的，也就保证了可见性。
 * @author: HuRan QQ1345122890
 * @create: 2021-08-17 19:52
 */
public class VolatileTest01 {
    static    boolean run = true;
    final static Object lock=new Object();
    public static void main(String[] args) throws InterruptedException {
        Thread t = new Thread(new Runnable() {
            @Override
            public void run() {
                while (true) {
                    synchronized (lock){
                        if(!run){
                            break;
                        }
                    }

                }
            }
        });
        t.start();
        TimeUnit.SECONDS.sleep(2);
        run = false;
    }

}